package com.cskaoyan.module.bo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * CouponCreateBo
 *
 * @param
 * @return
 * @2022/4/7
 **/
@NoArgsConstructor
@Data
public class CouponCreateParamBo {
    @JsonProperty("name")
    private String name;
    @JsonProperty("desc")
    private String desc;
    @JsonProperty("tag")
    private String tag;
    @JsonProperty("total")
    private Integer total;
    @JsonProperty("discount")
    private BigDecimal discount;
    @JsonProperty("min")
    private BigDecimal min;
    @JsonProperty("limit")
    private Integer limit;
    @JsonProperty("type")
    private Integer type;
    @JsonProperty("status")
    private Integer status;
    @JsonProperty("goodsType")
    private Integer goodsType;
    @JsonProperty("goodsValue")
    private  Integer[] goodsValue;
    @JsonProperty("timeType")
    private Integer timeType;
    @JsonProperty("days")
    private Integer days;
    @JsonProperty("startTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;
    @JsonProperty("endTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;
    @JsonProperty("couponGoodsList")
    private List<CouponGoodsListDTO> couponGoodsList;

    @NoArgsConstructor
    @Data
    public static class CouponGoodsListDTO {
        @JsonProperty("goodsId")
        private Integer goodsId;
        @JsonProperty("goodsName")
        private String goodsName;
        @JsonProperty("goodsSn")
        private String goodsSn;
    }
}
